/*
 * StateMachine.h
 *
 *  Created on: 15 Nov 2013
 *      Author: axel
 */

#ifndef STATEMACHINE_H_
#define STATEMACHINE_H_

#include <GL/glew.h>
#include <glfw3.h>

class StateMachine
{
public:
	StateMachine(void);
	virtual ~StateMachine(void);

	virtual void renderGame(float interpolation)=0;
	virtual void updateGame(int timer)=0;
	virtual void handleInput(GLFWwindow* window)=0;

	virtual long stateChanger()=0;
	virtual long getKeyCode()=0;

	virtual void reInit()=0;
	virtual void init()=0;
};


#endif /* STATEMACHINE_H_ */
